package org.jeecg.modules.business.entity;

import java.io.Serializable;
import java.io.UnsupportedEncodingException;
import java.util.Date;
import java.math.BigDecimal;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.jeecg.common.aspect.annotation.Dict;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * @Description: bus_market_member_info
 * @Author: jeecg-boot
 * @Date:   2023-03-02
 * @Version: V1.0
 */
@Data
@TableName("bus_market_member_info")
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="bus_market_member_info对象", description="bus_market_member_info")
public class BusMarketMember implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**关联租户*/
	@Excel(name = "关联租户", width = 15)
    @ApiModelProperty(value = "关联租户")
    private String tenantId;
	/**关联酒店*/
	@Excel(name = "关联酒店", width = 15)
    @ApiModelProperty(value = "关联酒店")
    private String hotelId;
	/**会员名称*/
	@Excel(name = "会员名称", width = 15)
    @ApiModelProperty(value = "会员名称")
    private String name;
	/**会员类型（0-会员折扣；1-房价方案）*/
	@Excel(name = "会员类型（0-会员折扣；1-房价方案）", width = 15)
    @ApiModelProperty(value = "会员类型（0-会员折扣；1-房价方案）")
    private Integer type;
	/**会员折扣值*/
	@Excel(name = "会员折扣值", width = 15)
    @ApiModelProperty(value = "会员折扣值")
    private BigDecimal discount;
    /**会员折扣值*/
	@Excel(name = "会员折扣值", width = 15)
    @ApiModelProperty(value = "会员折扣值")
    private BigDecimal goodsDiscount;
	/**关联房价方案*/
	@Excel(name = "关联房价方案", width = 15)
    @ApiModelProperty(value = "关联房价方案")
    private String schemeId;
	/**是否需要支付（0-否；1-是）*/
	@Excel(name = "是否需要支付（0-否；1-是）", width = 15)
    @ApiModelProperty(value = "是否需要支付（0-否；1-是）")
    private Integer payFlag;
	/**支付金额*/
	@Excel(name = "支付金额", width = 15)
    @ApiModelProperty(value = "支付金额")
    private BigDecimal payAmount;
	/**购买会员卡所需积分*/
	@Excel(name = "购买会员卡所需积分", width = 15)
    @ApiModelProperty(value = "购买会员卡所需积分")
    private BigDecimal payIntegral;
	/**是否可以储值（0-否；1-是）*/
	@Excel(name = "是否可以储值（0-否；1-是）", width = 15)
    @ApiModelProperty(value = "是否可以储值（0-否；1-是）")
    private Integer payStored;
	/**会员等级*/
	@Excel(name = "会员等级", width = 15)
    @ApiModelProperty(value = "会员等级")
    private Integer level;
	/**会员优惠（每一积分可抵扣金额）*/
	@Excel(name = "会员优惠（每一积分可抵扣金额）", width = 15)
    @ApiModelProperty(value = "会员优惠（每一积分可抵扣金额）")
    private BigDecimal hyyh;
	/**充值是否自动续期*/
	@Excel(name = "充值是否自动续期", width = 15)
    @ApiModelProperty(value = "充值是否自动续期")
    private Boolean renewal;
	/**自动续期天数*/
	@Excel(name = "自动续期天数", width = 15)
    @ApiModelProperty(value = "自动续期天数")
    private BigDecimal renewalDay;
	/**是否客房积分模式*/
	@Excel(name = "是否客房积分模式", width = 15)
    @ApiModelProperty(value = "是否客房积分模式")
    private Boolean tenantPointsChecked;
	/**客房积分模式（1-所有的消费转成积分；2-只房费转积分；）*/
	@Excel(name = "客房积分模式（1-所有的消费转成积分；2-只房费转积分；）", width = 15)
    @ApiModelProperty(value = "客房积分模式（1-所有的消费转成积分；2-只房费转积分；）")
    private Integer tenantPoints;
	/**客房消费金额*/
	@Excel(name = "客房消费金额", width = 15)
    @ApiModelProperty(value = "客房消费金额")
    private BigDecimal tenantRoomIntegral;
	/**客房消费可增加积分*/
	@Excel(name = "客房消费可增加积分", width = 15)
    @ApiModelProperty(value = "客房消费可增加积分")
    private BigDecimal addTenantRoomIntegral;
	/**是否按储值卡支付积分*/
	@Excel(name = "是否按储值卡支付积分", width = 15)
    @ApiModelProperty(value = "是否按储值卡支付积分")
    private Boolean roomIntegralChecked;
	/**储值卡消费金额*/
	@Excel(name = "储值卡消费金额", width = 15)
    @ApiModelProperty(value = "储值卡消费金额")
    private BigDecimal roomIntegral;
	/**储值卡消费可增加积分*/
	@Excel(name = "储值卡消费可增加积分", width = 15)
    @ApiModelProperty(value = "储值卡消费可增加积分")
    private BigDecimal addRoomIntegral;
	/**是否按入住天数积分*/
	@Excel(name = "是否按入住天数积分", width = 15)
    @ApiModelProperty(value = "是否按入住天数积分")
    private Boolean dayIntegralChecked;
	/**入住天数*/
	@Excel(name = "入住天数", width = 15)
    @ApiModelProperty(value = "入住天数")
    private BigDecimal dayIntegral;
	/**入住可增加积分*/
	@Excel(name = "入住可增加积分", width = 15)
    @ApiModelProperty(value = "入住可增加积分")
    private BigDecimal addDayIntegral;
	/**是否按启用储值赠送*/
	@Excel(name = "是否按启用储值赠送", width = 15)
    @ApiModelProperty(value = "是否按启用储值赠送")
    private Boolean rechargeChecked;
	/**充值金额*/
	@Excel(name = "充值金额", width = 15)
    @ApiModelProperty(value = "充值金额")
    private BigDecimal rechargeIntegral;
	/**充值可增加积分*/
	@Excel(name = "充值可增加积分", width = 15)
    @ApiModelProperty(value = "充值可增加积分")
    private BigDecimal addRechargeIntegral;
	/**是否积分满足*/
	@Excel(name = "是否积分满足", width = 15)
    @ApiModelProperty(value = "是否积分满足")
    private Boolean upLevelChecked;
	/**自动升级所需积分*/
	@Excel(name = "自动升级所需积分", width = 15)
    @ApiModelProperty(value = "自动升级所需积分")
    private BigDecimal upLevelIntegral;
	/**自动升级等级*/
	@Excel(name = "自动升级等级", width = 15)
    @ApiModelProperty(value = "自动升级等级")
    private String upLevel;
	/**升级扣除积分*/
	@Excel(name = "升级扣除积分", width = 15)
    @ApiModelProperty(value = "升级扣除积分")
    private BigDecimal subLevelIntegral;
	/**是否升级扣除相应积分*/
	@Excel(name = "是否升级扣除相应积分", width = 15)
    @ApiModelProperty(value = "是否升级扣除相应积分")
    private Boolean subLevelChecked;
	/**会员图标*/
	@Excel(name = "会员图标", width = 15)
    @ApiModelProperty(value = "会员图标")
    private String icon;
	/**卡片背景*/
	@Excel(name = "卡片背景", width = 15)
    @ApiModelProperty(value = "卡片背景")
    private String bgImage;
	/**卡片描述*/
	@Excel(name = "卡片描述", width = 15)
    @ApiModelProperty(value = "卡片描述")
    private String content;

    /**离店时间*/
    @Excel(name = "离店时间", width = 15)
    @ApiModelProperty(value = "离店时间")
	private String leaveTime;

    @TableField(exist = false)
    private String hotelName;
}
